{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 嵌入式未来10年的如何发展\n",
    "\n",
    "截止到2018年，嵌入式系统发展一直处于不温不火状态，还记得2012年在读硕士期间，老师曾给过两幅图片：一幅高楼大厦、灯火通明、另一幅小小的村落、点点灯光。高楼大厦代表的互联网行业，一直处于蓬勃发展；而嵌入式则一直处于小村落状态。但万事万物的发展都是由逐步的量变转为质变，目前嵌入式蓬勃发展的三个基本条件已经成熟，未来的嵌入式必将迈入AIOT(AIOT=AI+IOT)时代。\n",
    "    \n",
    "咱们先看看三个基本条件：算力的提升和SOC的成熟、5G的商业化普及、硬件友好性深度学习算法的逐步成熟。\n",
    "\n",
    "1.算力的提升和SOC的成熟。\n",
    "    \n",
    "1981年，intel公司制造MCS-51单片机，把我们带入了嵌入式世界。\n",
    "\n",
    "记得2009年大四由于毕业设计的需要，购买了一套郭天祥老师的《51单片机C语言教程》图书和配套开发板，从那时起，开启了我的嵌入式世界之旅。\n",
    "\n",
    "经过大学四年的努力，如愿的考上研究生。研究生期间，第一个项目就是用STC89C51单片机，借此机会好好把郭老师的课程消化了，记得当时STC公司提供的单片机内置1KByte的RAM、8KByte的FLASH，内置定时器、ADC等外设，感觉太棒了、这块单片机拥有了一起，经过了半年的测试实验，交付用户，第一个项目还算不错，达到用户的要求；在产品的后期，由于新增不少功能，引入了RTX-51操作系统，引入了多任务的概念，让我第一次见识到，原来单片机可以这么玩，操作系统这么好用。第二个项目就是使用MSP430F149（从8位单片机升级为16位单元机了）给海洋平台做传感器数据汇总、本地存储和远程发送，主要使用MSP430的低功耗特性。项目中期由于功能复杂和出了一次问题，引入了ucos-II系统（由RTX-51升级为ucos-II），利用其多任务的特点，成功的解决了“前台main函数－后台中断”满足不了当前项目多任务的要求(主要还是修为不够，靠外力弥补)；这个项目也成为我的毕业论文。这里要感谢我的导师唐达老师和好战友何峰同学，唐老师给予了我们最大的资金支持和项目自主权，让我看到了我具备的能力；我和峰峰同学分别负责一个大项目中的2个子项目，与峰峰同学共同进行了一场嵌入式冒险之旅，最后安全抵达终点。\n",
    "\n",
    "2012年毕业，进入了工作岗位。工作后，继续从事嵌入式系统开发，处理器升级为了ARM、MIPS，使用过AT91RM9200(ARM9)、AT91SAM9G45(ARM9)、LPC4357(Cortex-M4、M0双核)、LS2K1000（龙芯MIPS处理器)；在AT91SAM9G45上，开始了我的linux之旅，从此让我无法自拔的迷恋上操作系统，终于可以玩大型系统了；在工作中，接触到SylixOS系统，这个真正的我国自主可控强实时系统（SylinxOS对标VxWorks系统，在已在安全性要求极高的航空、航天、电力和高铁等领域应用；我深入看过源码，SylixOS不是linux系统加个“外壳”、也不是VxWorks系统加个“外壳”，是系统作者一点点打磨、历经十年时间练就的一把利刃，系统作者的精神也让我明白，任何事情的成功不是偶然的，只有坐得起冷板凳，静下心来沉淀自己，才能开启属于自己的辉煌。同时，也更加坚定了我静下心来做一些属于自己的事情，比如现在我正在做的“品树莓派系列”教程。希望后面有机会可以与大家一起品品SylixOS）。在2013年底，由于项目需求开启了我的linux之旅，经过险滩暗礁、也有山穷水尽疑无路时，最终还是咬牙坚持下来，看到了黎明的曙光，这要感谢我的组长宋庆国和部门领导张晓明，组长给予了专业的指导，让我脱离险滩、避开暗礁，看到了属于自己的linux系统；张部长付出了极大地耐心和关怀，为我们年轻人的成长保驾护航。航天系统的6年经历，让精益求精、打破砂锅问到底的精神深入到我的骨髓中。（归零：航天系统专有名词，就是要把搞清问题机理、问题现象可稳定重复复现、更改措施有效、同时进行举一反三、其他产品是否有类似问题，杜绝此类问题再次发生）\n",
    "   \n",
    "2018年，离开了学习、工作了6年的单位，进入了一家初创性企业，继续从事嵌入式系统开发。现在已经入职一年多了，这一年多的感受就是，不论何时何地一定要多读书、读好书。由于公司是哈工大孵化的企业，可以继续与学校老师进行交流（本人始终迷恋着校园里的书香气）。从与公司高层和学校老师的交流中，让我深深的感受到，领导和老师们从未停止过学习，一直紧紧跟随着时代的发展，与彭宇老师的一次交流中，彭宇老师要求我们年青一代一定要博览群书，火花总是在学科交叉中产生。于是，继续开始停止了1年的读书行动，并带着孩子一起读书（坐在沙发上，人手一本）。在工作中，接手了zcu102系统预研工作，zynq系统SOC为我开启了另一扇大门，一枚小小的芯片既有通用CPU的PS端、又有FPGA可定制逻辑的PL端，之前形成在工作中总结的系统架构已经被我敲碎（稀碎），现在是时候重新建立新的系统结构了。zynq系统的魅力在于，系统架构师可以将之前需要并行处理的复杂算法，使用PL端的硬件逻辑来实现，做到真正的并行化，例如，深度学习中的卷积乘法，用PL端来实现，可以提供同等功耗下比CPU和GPU更强大的算力。同时，xilinx公司提供的vivado高层次综合（HLS）,让嵌入式工程师用C/C++来快速、高效的在PL端实现自己的算法（感觉就像当年C语言替代汇编语言，成为系统开发到主流，由编译器负责C语言到汇编的转化）。\n",
    "\n",
    "10年的嵌入式之旅，看到嵌入式处理器性能的逐步提升（主频从几十M到上G，核心从单核到多核）、操作系统赋予嵌入式处理器新的灵魂、承担的更多、更复杂的任务。当前借助HLS的助力，把FPGA带入嵌入式工程师的世界，已经开启了智能嵌入式时代。\n",
    "    \n",
    "2.5G商业化普及。\n",
    "\n",
    "2019年（今年），美国亲自出面，动用国家的力量制裁我国的华为。究竟为什么一个超级大国要动用其所有的力量，制裁一家企业？重要因素之一就是5G（推荐阅读《5G时代：什么是5G，它如何改变世界》，中国人民大学出版社出版）。书中介绍，从1G到4G是量变，是通信速率的提升，而5G是质变，带来的是万物互联，6G是5G的量变，对5G的改进。所以5G是关键，这就是为什么美国不惜一切代价制裁、整垮华为（华为是整不跨的，借用并更改下格力的一句广告词”华为掌握核心科技“）。5G的高速度、泛在网、低功耗、低时延的特性，让万物联网上升为万物互联的阶段。其物联网的边设备和端设备必然是高性能、低功耗的嵌入式设备。5G必将助推嵌入式进入一个万丈高楼、灯火辉煌的蓬勃发展阶段。\n",
    "    \n",
    "3.边缘端深度学习算法和硬件有好性深度学习算法的逐步成熟。\n",
    "\n",
    "人工智能到2019年为止，共经历了3测浪潮，从单层神经网络到多层BP神经网络再到现在的深度卷积神经网络，当前正处于深度卷积神经网络浪潮中。2016年AlphaGo战胜了职业九段旗手李世石，可谓轰动全球，让人工智能进入了公众的视野。当前，任何事情不带着人工智能，就是out。期间，各研究机构进行了基于当前网络模型的裁剪工作、定制专用的NPU协处理器，但与学校交流中发现，深入理解深度网络模型、从模型中甄选硬件友好型神经网络模型进行修改、实现，是一条很不错的选择。但这要求工程师具有极高的内功修为，从整体上把握系统，选择合适的神经网络模型，把算力合理的分配到PS、PL端进行，实现边缘端高能效计算。我当前的工作重点之一就是，继续深入理解神经网络模型，学习HLS工具，将结合需求，合理的利用PS端和PL端资源，实现边缘端的高能效计算。\n",
    "\n",
    "未来是AIOT时代，更是人才的竞争。时代对人才有了新的要求，您是否准备好了呢？"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
